A Deferred object with a \code{wait} method that returns True if the operation
succeeded or False if any provided predicates failed.  Raises an exception on
error.
